{{tag>Dapper Edgy Feisty Gutsy jeu wine vétuste}}

----

====== Installer DirectX sous Wine ======

<note warning>Pour des questions de licence, Wine n'intégrera jamais l'API complète de Microsoft, ces manipulations restent donc d'actualité et ce malgré le travail accompli par les développeurs de Wine!</note>

Si vous essayez de lancer un programme requérant DirectX sous Wine, vous aurez sûrement l'erreur suivante :
> Vous utilisez une ancienne version de DirectX

Cette page vous propose d'installer DirectX sur votre ordinateur afin de pouvoir installer et utiliser ces programmes.

<note important>Cette manipulation est fortement déconseillée pour la majorité des utilisateurs de Wine. Si vous avez besoin d'une bibliothèque DirectX spécifique alors copiez seulement la dll correspondante dans votre répertoire /home/votre_login/.wine/drive_c/windows/system32</note>


<note>Si, avec la nouvelle version de Directx 9.0c (Juin 2010) vous avez un problème au début de l'installation, configurez Wine avec "winecfg" ou allez dans "Applications>Wine>Configurer Wine". Ensuite, choisissez "Windows 7" comme version de Windows (en bas).</note>

===== Pré-installation =====


Téléchargez les DLL [[http://www.dlldump.com/download-dll-files_new.php/dllfiles/M/mscoree.dll/1.1.4322.5738/download.html|mscoree.dll]], [[http://www.dlldump.com/download-dll-files_new.php/dllfiles/S/streamci.dll/5.1.2600.0/download.html|streamci.dll]] et [[http://www.dlldump.com/download-dll-files_new.php/dllfiles/D/ddrawex.dll/5.03.2600.2180/download.html|ddrawex.dll]] nécessaires à l'installation.

Il faut copier les DLL //mscoree//, //streamci// et //ddrawex// dans le répertoire « /home/votre_login/.wine/drive_c/windows/system32 »<del> et les préciser en tant que natives à Windows dans l'onglet « Bibliothèques » de [[wine#ou_s_installe_wine_et_les_programmes_qui_y_tournent|winecfg]]</del> (c'est fait de manière manuelle dans les lignes qui suivent).


Vous avez besoin de préciser un grand nombre de DLL comme natives pour que l'installation fonctionne correctement. Voici la liste ci-dessous.

<note important>Une licence Windows authentique est obligatoire, sous peine d'être dans l'illégalité !</note>

[[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] **/home/$USER/.wine/user.reg**.
Cherchez une ligne similaire à celle-ci ou créez-la (1195992268 est, en version raccourcie, la date d'installation de wine. Elle sera donc différente pour vous)  :

<file>
[Software\\Wine\\DllOverrides] 1195992268
</file>

Copiez en dessous d'elle le contenu suivant :
<file>
"d3d8"="builtin"
"d3d9"="builtin"
"d3dim"="native"
"d3drm"="native"
"d3dx8"="native"
"d3dx9_24"="native"
"d3dx9_25"="native"
"d3dx9_26"="native"
"d3dx9_27"="native"
"d3dx9_28"="native"
"d3dx9_29"="native"
"d3dx9_30"="native"
"d3dx9_31"="native"
"d3dx9_32"="native"
"d3dx9_33"="native"
"d3dx9_34"="native"
"d3dx9_35"="native"
"d3dx9_36"="native"
"d3dx9_37"="native"
"d3dx9_38"="native"
"d3dx9_39"="native"
"d3dx9_40"="native"
"d3dx9_41"="native"
"d3dx9_42"="native" 
"d3dx10_33"="native"
"d3dx10_34"="native"
"d3dx10_35"="native"
"d3dx10_36"="native"
"d3dx10_37"="native"
"d3dx10_38"="native"
"d3dx10_39"="native"
"d3dx10_40"="native"
"d3dx10_41"="native"
"d3dx10_42"="native"
"d3dxof"="native"
"dciman32"="native"
"ddrawex"="native"
"devenum"="native"
"dinput"="builtin"
"dinput8"="builtin"
"dmband"="native"
"dmcompos"="native"
"dmime"="native"
"dmloader"="native"
"dmscript"="native"
"dmstyle"="native"
"dmsynth"="native"
"dmusic"="native"
"dmusic32"="native"
"dnsapi"="native"
"dplay"="native"
"dplayx"="native"
"dpnaddr"="native"
"dpnet"="native"
"dpnhpast"="native"
"dpnlobby"="native"
"dsound"="builtin"
"dswave"="native"
"dxdiagn"="native"
"msdmo"="native"
"qcap"="native"
"quartz"="native"
"streamci"="native"
"mscoree"="native"
</file>

Si vous n'êtes pas sûr, créez le premier override (surclassage) de la bibliothèque "d3d8" grâce à winecfg (Configure Wine dans le menu de Wine ou winecfg via la console), dans l'onglet « Bibiliothèques ». Mettez-la en "inclue".

Puis, afin de vous simplifier la vie, [[:tutoriel:comment_editer_un_fichier|éditer le fichier]] **/home/$USER/.wine/user.reg**. Trouvez-y la section ''[Software\\Wine\\DllOverrides]'' et copiez-y la liste précédente ("d3d8"="builtin" devrait déjà exister).

===== Installation =====

Téléchargez la dernière version de DirectX d'[[http://filehippo.com/download_directx/|ici]], puis exécutez le fichier.

<note important>Il est recommandée d'effectuer l'installation deux fois pour avoir l'intégralité des bibliothèques DirectX. Une première fois en paramétrant la version de Windows en **Windows 2000** avec winecfg, puis une seconde fois en paramétrant la version de Windows désirée (le mieux étant de choisir la version la plus récente -Windows 7-)</note>

Lisez la licence affichée, puis cliquez sur "Yes" si vous l'acceptez((Sinon, vous pouvez quitter cette page.)). Choisissez le chemin d'extraction des fichiers et cliquez encore sur "Yes".

Rendez-vous au chemin d'extraction et exécutez « DXSETUP.EXE ». À ce moment-là, suivez les instructions. 

FIXME //Cette erreur est-elle toujours d'actualité?//: Relancez « DXSETUP.EXE » une seconde fois. Si vous ne le faites pas, une erreur de réseau sera affichée et DPlay ne fonctionnera pas correctement.








===== Test =====

Exécutez le fichier **/home/$USER/.wine/drive_c/windows/system32/dxdiag.exe** afin de tester les différents composants de Wine.

Vous pouvez maintenant tester ddraw, ddraw 3D, D3D8, et D3D9.

Si le fichier « dxdiag.exe » n'apparaît pas c'est que l'extraction n'a pas fonctionné.
Modifiez alors dans winecfg la version de Windows (2003/XP/**2000**) et recommencer l'extraction.





===== Paramètres Direct3D =====


Dans un terminal, tapez :

<code>
gedit ~/.wine/drive_c/Direct3D.reg
</code>

Mettez-y le contenu suivant:
<code>
REGEDIT4

[HKEY_CURRENT_USER\Software\Wine\Direct3D]
"DirectDrawRenderer"="OpenGL"
"Multisampling"="enabled"
"OffscreenRenderingMode"="fbo"
"PixelShaderMode"="enabled"
"UseGLSL"="disabled"
"VertexShaderMode"="hardware"
"VideoMemorySize"="xxx"
</code>

Ou xxx représente votre quantité de mémoire vidéo. Faites variez vos paramètres direct3d en fonction de vos besoins : par exemple pour lancer Command and Conquer 3 avec Wine vous devez changer la valeur UseGLSL en "enabled" sans quoi vous risquez de rencontrer de sérieux problèmes d'affichage une fois le jeu lancé ; par contre pour améliorer les performances des jeux steam comme Counter Strike Source vous devez désactiver cette valeur en la passant à "disabled".

<note important>À propos de la valeur "Multisampling": Si activé, cette valeur permet d'utiliser l'anticrénelage dans les applications 3D et les jeux, mais elle peut-être source de problèmes notamment avec l'utilisation du FBO.</note>

Ensuite, de nouveau dans un terminal :
<code>
cd  ~/.wine/drive_c/
regedit Direct3D.reg
</code>

<note tip>Plus d'informations sur les différents paramètres de la base de registre [[http://wiki.winehq.org/UsefulRegistryKeys|ici]]</note>

<note>Voir aussi: [[wine_trucs_et_astuces]]</note>


===== Note =====

Vous notez que sont installées dans « system32 », « d3dx9_24.dll » à « d3dx9_36.dll ». Cela aide beaucoup pour faire fonctionner des jeux requérants ces DLL DirectX additionnelles.

Maintenant vous pouvez lancer la plupart des dll DirectX comme « native » ou « builtin ». Par exemple, si un jeu pose problème à cause de « quartz.dll » en « builtin », vous pouvez le tester en mode « native ».

Gardez à l'esprit que //d3d8//, //d3d9// et //ddraw// fonctionnent seulement en "builtin ». Essayez au maximum d'utiliser //dsound// et //dinput// en « builtin » ; même si cela fonctionne parfois. La raison de ce mode est le besoin de ces DLL d'accéder directement au matériel. Direct Music et Direct Play peuvent s'utiliser en « native » dans la plupart des cas.

D'autres configurations de **Wine & DirectX** semble nécessaire pour certains jeux, voir par exemple :
  * Pour AACW : [[http://doc.ubuntu-fr.org/aacw#installation_de_wine_directx|Voir cette page]]
  * Pour Civ4 : FIXME

===== Sources =====

  * [[http://www.wine-reviews.net/microsoft/directx-90c-march-2008-redistributable-on-linux-with-wine.html|Wine Reviews]] [en]

----

//Contributeurs : [[utilisateurs:devildante]], Spartan234.//